package com.weiyuwqj.api.model;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;

@Table(name = "bus_prepayment_log")
public class BusPrepaymentLog implements Serializable {
    @Id
    private Integer id;

    /**
     * 项目id
     */
    @Column(name = "item_id")
    private Integer itemId;

    /**
     * 提前还款的用户
     */
    @Column(name = "prepay_user_id")
    private Integer prepayUserId;

    /**
     * 还款类型（1.全部提前还款 2.部分提前还款）
     */
    private Integer type;

    /**
     * 状态（0.失败 1.成功 2.审核中）
     */
    private Integer status;

    /**
     * 对应的待还记录
     */
    @Column(name = "repay_id")
    private Integer repayId;

    /**
     * 支付的违约金
     */
    @Column(name = "breaking_amount")
    private BigDecimal breakingAmount;

    /**
     * 提前还款的金额
     */
    @Column(name = "prepayment_amount")
    private BigDecimal prepaymentAmount;

    /**
     * 已产生的服务费
     */
    @Column(name = "produced_server")
    private BigDecimal producedServer;

    /**
     * 已产生的利息
     */
    @Column(name = "produced_interest")
    private BigDecimal producedInterest;

    /**
     * 剩余待还本金
     */
    @Column(name = "rest_principal")
    private BigDecimal restPrincipal;

    /**
     * 剩余待还服务费
     */
    @Column(name = "rest_server")
    private BigDecimal restServer;

    /**
     * 剩余待还利息
     */
    @Column(name = "rest_interest")
    private BigDecimal restInterest;

    private Date addtime;

    private String addip;

    /**
     * @return id
     */
    public Integer getId() {
        return id;
    }

    /**
     * @param id
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取项目id
     *
     * @return item_id - 项目id
     */
    public Integer getItemId() {
        return itemId;
    }

    /**
     * 设置项目id
     *
     * @param itemId 项目id
     */
    public void setItemId(Integer itemId) {
        this.itemId = itemId;
    }

    /**
     * 获取提前还款的用户
     *
     * @return prepay_user_id - 提前还款的用户
     */
    public Integer getPrepayUserId() {
        return prepayUserId;
    }

    /**
     * 设置提前还款的用户
     *
     * @param prepayUserId 提前还款的用户
     */
    public void setPrepayUserId(Integer prepayUserId) {
        this.prepayUserId = prepayUserId;
    }

    /**
     * 获取还款类型（1.全部提前还款 2.部分提前还款）
     *
     * @return type - 还款类型（1.全部提前还款 2.部分提前还款）
     */
    public Integer getType() {
        return type;
    }

    /**
     * 设置还款类型（1.全部提前还款 2.部分提前还款）
     *
     * @param type 还款类型（1.全部提前还款 2.部分提前还款）
     */
    public void setType(Integer type) {
        this.type = type;
    }

    /**
     * 获取对应的待还记录
     *
     * @return repay_id - 对应的待还记录
     */
    public Integer getRepayId() {
        return repayId;
    }

    /**
     * 设置对应的待还记录
     *
     * @param repayId 对应的待还记录
     */
    public void setRepayId(Integer repayId) {
        this.repayId = repayId;
    }

    /**
     * 获取支付的违约金
     *
     * @return breaking_amount - 支付的违约金
     */
    public BigDecimal getBreakingAmount() {
        return breakingAmount;
    }

    /**
     * 设置支付的违约金
     *
     * @param breakingAmount 支付的违约金
     */
    public void setBreakingAmount(BigDecimal breakingAmount) {
        this.breakingAmount = breakingAmount;
    }

    /**
     * 获取提前还款的金额
     *
     * @return prepayment_amount - 提前还款的金额
     */
    public BigDecimal getPrepaymentAmount() {
        return prepaymentAmount;
    }

    /**
     * 设置提前还款的金额
     *
     * @param prepaymentAmount 提前还款的金额
     */
    public void setPrepaymentAmount(BigDecimal prepaymentAmount) {
        this.prepaymentAmount = prepaymentAmount;
    }

    /**
     * 获取已产生的服务费
     *
     * @return produced_server - 已产生的服务费
     */
    public BigDecimal getProducedServer() {
        return producedServer;
    }

    /**
     * 设置已产生的服务费
     *
     * @param producedServer 已产生的服务费
     */
    public void setProducedServer(BigDecimal producedServer) {
        this.producedServer = producedServer;
    }

    /**
     * 获取已产生的利息
     *
     * @return produced_interest - 已产生的利息
     */
    public BigDecimal getProducedInterest() {
        return producedInterest;
    }

    /**
     * 设置已产生的利息
     *
     * @param producedInterest 已产生的利息
     */
    public void setProducedInterest(BigDecimal producedInterest) {
        this.producedInterest = producedInterest;
    }

    /**
     * 获取剩余待还本金
     *
     * @return rest_principal - 剩余待还本金
     */
    public BigDecimal getRestPrincipal() {
        return restPrincipal;
    }

    /**
     * 设置剩余待还本金
     *
     * @param restPrincipal 剩余待还本金
     */
    public void setRestPrincipal(BigDecimal restPrincipal) {
        this.restPrincipal = restPrincipal;
    }

    /**
     * 获取剩余待还服务费
     *
     * @return rest_server - 剩余待还服务费
     */
    public BigDecimal getRestServer() {
        return restServer;
    }

    /**
     * 设置剩余待还服务费
     *
     * @param restServer 剩余待还服务费
     */
    public void setRestServer(BigDecimal restServer) {
        this.restServer = restServer;
    }

    /**
     * 获取剩余待还利息
     *
     * @return rest_interest - 剩余待还利息
     */
    public BigDecimal getRestInterest() {
        return restInterest;
    }

    /**
     * 设置剩余待还利息
     *
     * @param restInterest 剩余待还利息
     */
    public void setRestInterest(BigDecimal restInterest) {
        this.restInterest = restInterest;
    }

    /**
     * @return addtime
     */
    public Date getAddtime() {
        return addtime;
    }

    /**
     * @param addtime
     */
    public void setAddtime(Date addtime) {
        this.addtime = addtime;
    }

    /**
     * @return addip
     */
    public String getAddip() {
        return addip;
    }

    /**
     * @param addip
     */
    public void setAddip(String addip) {
        this.addip = addip;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }
}